in C why do I have s : initialization requires a brace-enclosed initializer list